package com.cx.service;

import com.cx.dto.UserDTO;
import com.cx.dto.UserPageDTO;
import com.cx.pojo.Menu;
import com.cx.util.PageResult;
import com.cx.util.ResultUtil;
import com.cx.vo.JobAndCountVO;
import com.cx.vo.PermissionsVO;
import com.cx.vo.UserVO;

import java.util.List;


public interface UserService {
    ResultUtil<UserVO> login(UserDTO userDTO);

    ResultUtil register(UserDTO userDTO);

    ResultUtil<UserVO> selectUserById(long id);

    ResultUtil updateById(UserDTO userDTO);

    ResultUtil addUser(String ids, UserDTO userDTO);

    ResultUtil<List<Menu>> getMenus();

    ResultUtil<PageResult<UserVO>> getUserList(UserPageDTO userPageDTO);

    ResultUtil deleteUserById(Long id);

    ResultUtil<List<JobAndCountVO>> selectJobAndCount();

    ResultUtil<List<PermissionsVO>> getAuths();

    ResultUtil authorization(Integer id, Integer authId);

    ResultUtil<List<UserVO>> selectManager();

}
